从利用代码到漏洞函数的定位分析
环境
windows Xp
IDA 6.8
exp: https://www.exploit-db.com/exploits/18176/
可以看到是对AFDJoinLeaf函数的一个利用
1 | ## Trigger Pointer Overwrite |
我看win7的afd.sys好像没有AFDJoinLeaf这个函数,后来用xp的了,注意的是IDA7.0看不大函数名,所以还是IDA6.8好了
function窗口搜索AFDJoinLeaf,跟过去
length不为0才会去检测UserBuffer,那么我们就可以有任意地址写入的漏洞了
利用的话还要下面限制
输入长度大于0x18
handle不为0
修复的话就直接检测UserBuffer的有效性,不管length是否设置为0
reference
《漏洞战争》